Method and apparatus for frequency offset estimation, and system utilizing same

ABSTRACT

A direct current (DC) offset estimation, frequency offset estimation, and compensation system ( 200 ), receives data packet ( 204 ) with preamble ( 206 ). A DC offset estimator ( 210 ) and a frequency offset estimator ( 212 ) operate concurrently to produce estimates of DC and frequency offsets of the data packet ( 204 ), which are determined from a portion of the preamble ( 206 ) as it is received. As the data packet ( 204 ) is received, a compensator ( 214 ) receives the estimates of DC and frequency offsets and compensates the remaining portion of the data packet ( 204 ) to produce a DC and frequency compensated data packet ( 218 ). Concurrent operation of the DC estimator ( 210 ) and the frequency offset estimator ( 212 ) advantageously allows more time to produce the estimates of DC and frequency offsets.

FIELD OF THE INVENTION

[0001] The present invention relates to frequency offset estimation, and more particularly to frequency offset estimation in the presence of direct current offset.

BACKGROUND OF THE INVENTION

[0002] With the advent of personal wireless communication devices, there is a need for small portable units that have low power dissipation, and can be provided at relatively low cost. To meet these requirements, there is interest in a transceiver with direct conversion architecture (DCA). Different from conventional heterodyne receivers, the receiver of a DCA recovers base band information directly from the carrier signal without passing through an intermediate frequency stage and image signal rejection. This is accomplished by translating the radio frequency signal directly to zero frequency, and then employing a low pass filter to suppress any high frequency interference. The DCA receiver has several advantages over the heterodyne receiver, and meet the requirements of small form factor, low power dissipation, and low cost. However, a disadvantage is the down converted base band extends to zero frequency, and extraneous offset voltages, referred to as direct current (DC) offset, can corrupt the base band signal, and saturate subsequent base band processing stages. In addition, a DCA receiver also suffers I/Q mismatch, a result of mismatches between amplitude of the I and Q signal during quadrature down conversion. There are also concerns with even-order distortion, flicker noise and local oscillator leakage that adversely affect the performance of a DCA receiver.

[0003] Orthogonal frequency division multiplexing (OFDM) is a bandwidth efficient modulation technique that is used for high-speed wireless data transmissions. OFDM transmits data on densely packed orthogonal sub-carriers that are spaced in frequency exactly at the reciprocal of symbol interval. A primary advantage of OFDM is it is utilized for transmission at relatively low complexity in multipath channels. A disadvantage of OFDM systems is its sensitivity to frequency offset. Frequency offset can cause a reduction of signal amplitude at the output of OFDM demodulator, and also introduces inter-carrier interference (ICI) from the other sub-carriers, thus destroying the orthogonality of OFDM.

[0004] Combining the DCA and OFDM provides a transceiver that has a small form factor, has low power dissipation, is low cost and is bandwidth efficient. However, the DC offset and the frequency offset must be addressed. Typically, the approach that is taken is to estimate the DC and frequency offsets and then apply compensation based on the estimated offsets. In data transmission, offset estimation is typically performed during the reception of the preamble of each data packet, because in a packet switched system each data packet can be treated independently.

[0005] With reference to FIG. 1 a preamble 100 is shown with a time line t, where the preamble reception starts at t0, and ends at t3. During a first time interval t0 to t1 a first portion 105 of the preamble is used for DC offset estimation; during the second time interval t1 to t2 a second portion 110 of the preamble is used for DC offset compensation; and during a third time interval t2 to t3 a third portion 115 is used for frequency offset estimation. Here we assume that the receiver amplifier is not saturated by the presence of the DC offset. This conventional method sequentially estimates the DC offset, compensates for the DC offset, and then estimates the frequency offset. Of course it assumes that the DC offset estimation method is based on the initial reception of the first portions 105 of the preamble 100, and that the information from the first portion 105 is available.

[0006] Due to the limited time available to process the preamble 100, t0 to t1 interval for DC offset estimation, and t1 to t2 interval for DC offset compensation, one disadvantage is that residual DC offset may still be present when the frequency offset is later estimated in the time interval t2 to t3. Consequent1y, the residual DC may result in inaccurate frequency offset estimation. In addition, since part of the reception time of the preamble 100, interval t0 to t2, is used for DC offset estimation and compensation, the available time for frequency offset estimation, the interval t2 to t3, is reduced. Hence, a further disadvantage of this method is the short time during which frequency offset estimation is performed, and the consequent inaccuracy of the frequency offset estimation.

BRIEF SUMMARY OF THE INVENTION

[0007] The present invention seeks to provide a method and apparatus for offset estimation and system utilizing same, which overcomes or at least reduces the abovementioned problems of the prior art.

[0008] Accordingly, in one aspect, the present invention provides a data communication receiver for receiving at least one data packet, wherein the at least one data packet has a variety of inherent offsets, the data communication receiver comprising:

[0009] an input coupled to receive the at least one data packet; and

[0010] a plurality of offset estimators coupled to the input, the plurality of offset estimators comprising:

[0011] at least one of the plurality of offset estimators for estimating at least one of the variety of inherent offsets from at least a received portion of the at least one data packet while the at least one data packet is being received, and the at least one of the plurality of offset estimators having an output for providing an estimate of the at least one of the variety of inherent offsets; and

[0012] at least another one of the plurality of offset estimators coupled to the output of the at least one of the plurality of offset estimators, the at least another one of the plurality of offset estimators for estimating at least another one of the variety of inherent offsets from the at least the received portion of the at least one data packet while the at least one data packet is being received and from the estimate of the at least one of the variety of inherent offsets, and the at least another one of the plurality of offset estimators having an output for providing an estimate of the at least another one of the variety of inherent offsets.

[0013] In another aspect the present invention provides a data communication receiver for receiving data packets, the data communication receiver comprising:

[0014] an input coupled to receive at least one data packet, wherein the at least one data packet has a variety of inherent offsets;

[0015] at least one offset estimator for estimating at least one of the variety of inherent offsets from at least a received portion of the at least one data packet while the at least one data packet is being received, and the at least one offset estimator having an output for providing an estimate of the at least one of the variety of inherent offsets;

[0016] at least one compensator coupled to the input for receiving the at least one data packet, and coupled to the output of the at least one offset estimator for receiving the estimate of the at least one of the variety of inherent offsets, the at least one compensator for compensating the at least one of the variety of inherent offsets of the data packet using the estimate of the at least one of the variety of inherent offsets to produce at least a portion of a partially compensated data packet, and wherein the at least one compensator has an output for providing the at least the portion of the partially compensated data packet corresponding to the at least one data packet;

[0017] a plurality of offset estimators coupled to the output of the at least one compensator, the plurality of offset estimators comprising:

[0018] at least one of the plurality of offset estimators for estimating the at least one of the variety of inherent offsets from the at least the portion of the partially compensated data packet while the at least the portion of the partially compensated data packet is being received, and the at least one of the plurality of offset estimators having an output for providing an estimate of the at least one of the variety of inherent offsets; and

[0019] at least another one of the plurality of offset estimators coupled to the output of the at least one of the plurality of offset estimators, the at least another one of the plurality of offset estimators for estimating at least another one of the variety of inherent offsets from the at least the portion of the partially compensated data packet while the at least the portion of the partially compensated data packet is being received, and from the estimate of the at least one of the variety of inherent offsets, and the at least another one of the plurality of offset estimators having an output for providing an estimate of the at least another one of the variety of inherent offsets.

[0020] In yet another aspect the present invention provides a method for offset compensation comprising the steps of:

[0021] a) determining at least one data packet is being received;

[0022] b) estimating direct current offset of the at least one data packet to produce an estimate of direct current offset;

[0023] c) estimating frequency offset of the at least one data packet using the estimate of direct current offset;

[0024] d) compensating the at least one data packet using the estimate of direct current offset and the estimate of frequency offset to produce a compensated data packet;

[0025] e) providing the compensated data packet corresponding to the at least one data packet.

[0026] In still another aspect the present invention provides a method for frequency offset estimation comprising the steps of:

[0027] a) determining samples of at least one data packet are being received;

[0028] b) determining direct current offset power using the samples of the at least one data packet;

[0029] c) adding a predetermined constant to the direct current offset power;

[0030] d) storing a predetermined number of the samples of the at least one data packet;

[0031] e) performing complex conjugation on the predetermined number of the samples to produce a result;

[0032] f) multiply the result of the complex conjugation with the samples of the at least one data packet to produce an output;

[0033] g) determine the average of the output from step (f) by another predetermined number to provide an average;

[0034] h) determine argument of the average and divide the argument by the negative value of the predetermined number to produce a resulting quotient; and

[0035] i) multiply the resulting quotient by the sum of the constant and the direct current offset power determined in step (c) to produce a frequency offset estimate.

[0036] In yet still another aspect the present invention provides a method for frequency offset estimation comprising the steps of:

[0037] a) determining samples of at least one data packet are being received;

[0038] b) determining direct current offset power using the samples of the at least one data packet;

[0039] c) storing a predetermined number of the samples of the at least one data packet;

[0040] d) performing complex conjugation on the predetermined number of the samples to produce a result;

[0041] e) multiply the result of the complex conjugation with the samples of the at least one data packet to produce an output;

[0042] f) determine the average of the output from step (e) by another predetermined number to provide an average;

[0043] g) combine the direct current offset power from step (b) with the average from step (f) by subtraction;

[0044] h) determine argument of the result of subtraction from step (g) and divide the argument by the negative value of the predetermined number to produce a frequency offset estimate.

BRIEF DESCRIPTION OF THE DRAWINGS

[0045] An embodiment of the present invention will now be more fully described, by way of example, with reference to the drawings of which:

[0046]FIG. 1 shows a time-activity diagram of a prior art offset estimation and compensation system;

[0047]FIG. 2 shows a functional block diagram of one embodiment of an offset estimation and compensation system in accordance with the present invention;

[0048]FIG. 3A shows a time-activity diagram of the offset estimation and compensation system in FIG. 2;

[0049]FIG. 3B shows an alternate time-activity diagram of the offset estimation and compensation system in FIG. 2;

[0050]FIG. 4 is a flowchart detailing the operation of the offset estimation and compensation system in FIG. 2;

[0051]FIG. 5 shows a functional block diagram of another embodiment of an offset estimation and compensation system in accordance with the present invention;

[0052]FIG. 6A shows a time-activity diagram of the offset estimation and compensation system in FIG. 5;

[0053]FIG. 6B shows an alternate time-activity diagram of the offset estimation and compensation system in FIG. 5;

[0054]FIG. 7 is a flowchart detailing the operation of the offset estimation and compensation system in FIG. 5;

[0055]FIG. 8 shows the structure of a preamble of a data packet;

[0056]FIG. 9 is a model of a communication channel on which data packets having the preamble in FIG. 8 are transmitted;

[0057]FIG. 10 provides a graph showing the deterioration in frequency offset estimates with increasing DC offset power;

[0058]FIG. 11 shows a functional block diagram of a prior art frequency offset estimator without averaging;

[0059]FIG. 12 shows a functional block diagram of another prior art frequency offset estimator when averaging is employed;

[0060]FIG. 13 shows a functional block diagram of a first embodiment of a frequency offset estimator in accordance with the present invention;

[0061]FIG. 14 is a flowchart detailing the operation of the frequency offset estimator in FIG. 13;

[0062]FIG. 15 shows a functional block diagram of a second embodiment of a frequency offset estimator in accordance with the present invention; and

[0063]FIG. 16 is a flowchart detailing the operation of the frequency offset estimator in FIG. 15;

[0064] FIGS. 17A-F provide graphs showing the performance of the first and second embodiments of the present invention based on the preamble of a smaller number of data packets;

[0065] FIGS. 18A-F provide graphs showing the performance of the first and second embodiments of the present invention based on the preamble of a larger number of data packets; and

[0066] FIGS. 19A-C provide graphs comparing the performance of the second embodiment of the present invention to a prior art frequency offset estimator.

DETAIL DESCRIPTION OF THE DRAWINGS

[0067] A direct current (DC) and frequency offset estimation and compensation system receives data packets, each having a preamble. The system comprises a DC offset estimator and a frequency offset estimator that operate concurrent1y to produce estimates of DC and frequency offsets of the data packet, which are determined from a portion of the preamble as it is received. As the rest of the preamble is received, or alternatively after the preamble is received, a compensator receives the estimates of DC and frequency offsets and compensates the remaining portion of the data packet to produce a DC and frequency offset compensated data packet.

[0068] The concurrent operation of the DC and the frequency offset compensators advantageously allows more time to produce the estimates of DC and frequency offsets.

[0069] The frequency offset compensator disclosed advantageously receives the estimate of the DC offset from the DC estimator and uses the estimate of the DC offset to produce the estimate of the frequency offset, thus providing an improved estimate of the frequency offset.

[0070] With reference to FIG. 2 one embodiment of a DC and frequency offset estimation and compensation system 200 comprises an input 202 for receiving data packets 204 having a preamble 206. The input 202 is coupled to a DC offset estimator 210, a frequency offset estimator 212, and a compensator 214, and as the preamble 206 is received, it is provided concurrently to a DC offset estimator 210, a frequency offset estimator 212, and a compensator 214. The DC offset estimator 210 produces an estimate of DC offset and is coupled to provide the estimate to both the frequency offset estimator 212 and the compensator 214. The frequency offset estimator 212 uses the estimate of DC offset and is coupled to provide an estimate of frequency offset to the compensator 214. The compensator 214 receives estimates of both the DC and frequency offsets, and is coupled to an output 216, which provides a corresponding DC and frequency compensated data packet 218.

[0071] The system 200 performs concurrent estimation of the DC and frequency offsets when the preamble 206 is being received. With reference to FIG. 3A, this provides the opportunity for compensation to also be performed during reception of the preamble 206. Preamble reception time 305 is the time during which the preamble 206 of the data packet 204 is received. The preamble time 305 can be divided into a first portion, which will be referred to as estimation time 310, and a second portion, which will be referred to as compensation time 315. During the estimation time 310, the DC offset estimator 210 and the frequency offset estimator 212 operate concurrently, as shown by the blocks 320 and 332. Then, during the compensation time 315, the compensator 214 operates as shown by blocks 330 and 335 to compensate the received preamble 206 of the data packet 204 for both DC and frequency offsets, and can begin to provide the compensated data packet 218 by the end of the preamble reception time 305.

[0072] Alternatively, with reference to FIG. 3B, the DC and frequency offset estimation can be performed during the preamble reception time 305, and the DC and frequency offset compensation can be performed later i.e. after the preamble reception time 305, during a post processing compensation time 320. Of course this approach necessitates the use of a buffer to store the received data packet 204, and subsequently apply the post processing compensation to the stored data packet.

[0073] With reference now to FIG. 4, the operation 400 of the system 200 starts 405 with determining 410 when reception of the data packet 204 has started, and when the determination is positive, providing 415 the received portion of the data packet 204 to the DC offset estimator 210, the frequency offset estimator 212, and the compensator 214.

[0074] The DC offset estimator 210 estimates 420 DC offset of the data packet 204 from a part of the preamble 206, and provides 425 an estimate of the DC offset to the frequency offset estimator 212. The frequency offset estimator 212 uses the estimate of DC offset to estimate 430 frequency offset of the data packet 204, and produces an estimate of the frequency offset.

[0075] The compensator 214 is provided 435 with the estimates of the DC offset and the frequency offset, and the compensator 214 uses the DC and frequency offsets to compensate 440 the data packet 204. Here, compensation is performed as the data packet is received, and the compensator 214 continues to compensate 440 the data packet 204 until a determination 445 is made that the compensation of the data packet 204 is complete, and the compensated data packet 218 has been provided 450. The operation 400 then returns to determining 410 the start of reception of another data packet.

[0076] With reference to FIG. 5 another embodiment of a DC and frequency offset estimation and compensation system 500 comprises an input 502 for receiving data packets 204 having a preamble 206. The input 502 is coupled to a DC offset estimator 505 and a DC offset compensator 507. The DC offset estimator 505 produces an estimate of DC offset from a portion of the preamble 206 as it is received, and has an output that is coupled to provide the estimate to the DC offset compensator 507. The DC offset compensator 507 uses the estimate of DC offset and the data packet 204 to produce a portion of a DC offset compensated preamble (not shown).

[0077] The DC offset compensator 507 has an output which is coupled to provide the portion of the DC offset compensated preamble concurrently to a residual DC offset estimator 510, a frequency offset estimator 512, and a compensator 514. As the portion of the DC offset compensated preamble is received, it is provided concurrently to a residual DC offset estimator 510, a frequency offset estimator 512, and a compensator 514. The residual DC offset estimator 510 produces an estimate of residual DC offset and is coupled to provide the estimate to both the frequency offset estimator 512 and the compensator 514. The frequency offset estimator 512 uses the estimate of residual DC offset, and is coupled, to provide an estimate of frequency offset to the compensator 514. The compensator 514 receives estimates of both the residual DC and frequency offsets, and is coupled to an output 516, which provides a corresponding residual DC and frequency compensated data packet 518.

[0078] The system 500 performs sequential DC offset estimation and compensation followed by concurrent estimation of residual DC and frequency offsets when the preamble 206 is being received. With reference to FIG. 6A, this provides the opportunity for further offset compensation to be performed during reception of the preamble 206. As before, the preamble reception time 305 is the time during which the preamble of the data packet 204 is received. The preamble time 305 can be divided into a first portion, which will be referred to as estimation time 605, a second portion, which will be referred to as DC offset compensation time 610, a third portion, which will be referred to as concurrent compensation time 615, and a fourth portion, which will be referred to as DC and frequency offset compensation time 610. During the estimation time 605, only the DC offset estimator 505 operates as shown by the block 625, and during the DC offset compensation time 610 only the DC offset compensator 507 operates as shown by block 630. However, during the concurrent estimation time 615 both the residual DC offset estimator 510 and the frequency offset estimator 512 operate, as shown by blocks 635 and 640. Finally, during the DC and frequency offset compensation time 620, the compensator 514 compensates the portion of the DC offset compensated preamble, and can begin to provide the compensated data packet 518 by the end of the preamble reception time 305.

[0079] Alternatively, with reference to FIG. 6B, the DC estimation and compensation, and the concurrent estimation of DC and frequency offsets can be performed during the preamble reception time 305, and the residual DC and frequency offset compensation can be performed later i.e. after the preamble reception time 305, during a post processing compensation time 320. As before, this approach necessitates the use of a buffer to store the received data packet 204, and subsequently apply the post processing compensation to the stored data packet.

[0080] With reference now to FIG. 7, the operation 700 of the system 500 starts 705 with determining 710 when reception of the data packet 204 has started, and when the determination is positive, providing 715 the received portion of the data packet 204 to the DC offset estimator 505 and the DC offset compensator 507. The DC offset estimator 507 determines 720 an estimate of DC offset of the data packet 204 from the received portion of the data packet 204, and when a determination 725 is made that a predetermined estimation time 605 has elapsed, then the DC offset estimator 507 provides 730 an estimate of the DC offset to the DC offset compensator 507. The DC offset compensator 507 uses the estimate of DC offset and the received portion of the data packet 204 to compensate the received portion of the data packet, and subsequently produce a DC offset compensated portion of the data packet 204 after a determination 740 that the DC offset compensation time 610 has elapsed.

[0081] The DC offset compensated portion of the data packet 204 is then concurrently provided 745 to the residual DC offset estimator 510, the frequency offset estimator 512, and the compensator 514. The residual DC offset estimator 210 estimates 750 residual DC offset of the compensated portion of the data packet 204, and provides 755 an estimate of the residual DC offset to the frequency offset estimator 512. The frequency offset estimator 512 uses the estimate of the residual DC offset to estimate 760 frequency offset of the compensated portion of the data packet 204, and produces an estimate of the frequency offset.

[0082] The compensator 514 is provided 765 with the estimates of the residual DC offset and the frequency offset, and the compensator 214 uses the residual DC and frequency offsets to further compensate 770 the compensated portion of the data packet 204. Again, compensation is performed as the data packet 204 is received, and the compensator 514 continues to compensate 770 the data packet 204 until a determination 445 is made that the further compensation of the data packet 204 is complete, and the compensated data packet 518 has been provided 780. The operation 700 then returns to determining 710 the start of reception of another data packet.

[0083] The frequency offset estimator 212 and 512, in accordance with the present invention, will now be described based on a DCA receiver with OFDM modulation.

[0084] As an illustrative aid, a model is provided with the following notation:

[0085] f_(c) is inter-carrier spacing of OFDM sub-carriers;

[0086] f_(a) is actual frequency offset of OFDM sub-carriers;

[0087] ε is the relative frequency offset i.e. the ratio of f_(a) to f_(c);

[0088] P is the number of sub-carriers used; and

[0089] T=1/(Pf_(c)) as the sampling interval.

[0090]FIG. 8 shows the structure of the preamble of data packets that will be used in a simulation with the model, where the preamble complies with the IEEE 802.11a standard. The preamble comprises M slots each having an inter-slot index m, and N intra-slots each having an intra-slot index n. The model will be used in a simulation, with P=64 and N=16 on a communication channel.

[0091] A transmitted preamble can be defined as

x(m,n)Δ|x(m,n)|exp(jα(m,n))  (1)

[0092] The complex channel gain as:

AΔ|A|exp(jθ)  (2)

[0093] And, as a result of the DCA, the DC offset as:

δΔ|δ|exp(jβ)  (3)

[0094] The assumption that a time invariant complex gain A and DC offset δ is valid, when the coherence time is relatively large as compared to the packet length, and when the gain controller at the receiver is held constant.

[0095] The preamble is transmitted via a communication channel with a frequency offset defined as follows: $\gamma = {\frac{2\quad \pi \quad f_{a}}{\left( {P\quad f_{c}} \right)} = \frac{2\quad \pi \quad ɛ}{(P)}}$

[0096] With reference to FIG. 9 the model 900 of the communication channel takes into account the various parameters of the communication channel that affect transmission of data packets. These include frequency offset 905 represented by exp(jγk), complex gain 910 represented by A=|A|exp(jθ), direct current offset 915 represented by δ=|δ|exp(jβ), and noise 920 represented by v(m,n), which affect the transmitted preamble 925 represented by x(m,n) and results in a received preamble 930 represented by z(m,n). Further, including additive white Gaussian noise (AWGN) in the communication channel with variance σ_(v) ², the received preamble 930 is defined as follows: $\begin{matrix} {{z\left( {m,n} \right)} = {{y\left( {m,n} \right)} + {v\left( {m,n} \right)}}} & (4) \\ \begin{matrix} {{y\left( {m,n} \right)} = {{{{Ax}\left( {m,n} \right)}{\exp \left( {j\quad \gamma \quad k} \right)}} + \delta}} \\ {= {{{{Ax}\left( {m,n} \right)}}{\exp\left\lbrack {{j\left( {{\gamma \quad k} + {\alpha \left( {m,n} \right)} + \theta} \right\rbrack} + {{\delta }{\exp \left( {j\quad \beta} \right)}}} \right.}}} \end{matrix} & (5) \end{matrix}$

Prior Art With no DC Offset

[0097] An article titled “Frequency Offset Synchronization and Channel Estimation for OFDM Based Transmission” by Song et al. in IEEE Communications Letters Vol. 4 No. 3 March 2000, discloses frequency offset estimation for a communication channel in the presence of AWGN, and where there is no DC offset. The article teaches that when the signal to noise ratio (SNR) is high, the frequency offset estimator is not biased.

[0098] This may be expressed, thus.

E[{circumflex over (ε)}]−ε=0

[0099] Then, the variance of the frequency offset estimator can be shown as follows: $\begin{matrix} {{E\left\{ \left( {\hat{ɛ} - {E\left\lbrack \hat{ɛ} \right\rbrack}} \right)^{2} \right\}} \approx {\left( \frac{P}{{N2}\quad \pi} \right)^{2}\frac{1}{\left( {M - 1} \right)^{2}N\quad {SNR}}\underset{\underset{\_}{\_}}{\Delta}\quad {\sigma^{2}\left( {M,N} \right)}}} & (6) \end{matrix}$

[0100] For unbiased estimators, the variance of the estimator is the mean square error (MSE) of the estimate.

[0101] Another article titled “A Technique for Orthogonal Frequency Division Multiplexing Frequency Offset Correction” by Moose in IEEE Transactions on Communications Vol. 42 No. 10 October 1994, discloses a maximum likelihood estimation algorithm. Using Moose's algorithm, the M repeated slots each with a length of N points is divided into two bigger slots, each of length MN/2, on the assumption that M is even. The variance of frequency offset estimate can then be obtained by replacing M by 2 and N by MN/2 in equation (6), producing the following equation. $\begin{matrix} {{\sigma^{2}\left( {2,{{MN}/2}} \right)} \approx {\left( \frac{P}{{MN}\quad \pi} \right)^{2}\frac{1}{{MN}\quad {{SNR}/2}}}} & (7) \end{matrix}$

[0102] Then assuming M is even we have: $\frac{\sigma^{2}\left( {2,{{MN}/2}} \right)}{\sigma^{2}\left( {M,N} \right)} = {\frac{8\left( {M - 1^{2}} \right)}{M^{3}} = \left\{ \begin{matrix} {1,} & {M = 2} \\ {{\text{>}\quad 1},} & {M = 4} \\ {{\text{<}\quad 1},} & {{M = 6},{8\quad \ldots}} \end{matrix} \right.}$

[0103] From the equation above, Moose's frequency offset estimator provides better performance than Song's in the way of lower variance for M=6, 8, . . . etc. In addition, the improvement is marginal for smaller values of M. However, neither Moose nor Song considers a frequency offset estimator that takes into account the presence of a DC offset.

Prior Art With DC Offset

[0104] Now using the frequency offset estimator above with DC offset and equation (20), which will be derived later, the mean square error (MSE) of the frequency offset estimate, taking into account the DC offset, can be determined as follows: $\begin{matrix} \begin{matrix} {{E\left\{ \left\lbrack {\hat{ɛ} - ɛ} \right\rbrack \right\}} = {E\left\{ \left\lbrack {\hat{ɛ} - {E\left( \hat{ɛ} \right)} + {E\left( \hat{ɛ} \right)} - ɛ} \right\rbrack^{2} \right\}}} \\ {= {{E\left\{ \left\lbrack {\hat{ɛ} - {E\left( \hat{ɛ} \right)}} \right\rbrack^{2} \right\}} + {E\left\{ \left\lbrack {{E\left( \hat{ɛ} \right)} - ɛ} \right\rbrack^{2} \right\}}}} \\ {= {{E\left\{ \left\lbrack {\hat{ɛ} - {E\left( \hat{ɛ} \right)}} \right\rbrack^{2} \right\}} + \left\lbrack {{E\left( \hat{ɛ} \right)} - ɛ} \right\rbrack^{2}}} \end{matrix} & (8) \end{matrix}$

[0105] This relates the MSE to the variance and bias of the estimator. When DC offset is present, the estimator is biased: $\begin{matrix} {{{E\left\lbrack \hat{ɛ} \right\rbrack} - ɛ} = {{- \frac{P}{2\quad \pi \quad N}}{\arg\left( {1 + {{\delta }^{2}\quad {\exp \left( {j\quad N\quad \gamma} \right)}}} \right)}}} & (9) \end{matrix}$

[0106] Thus, with the variance given in Equation (6), and if proper preamble is used, the MSE can be approximated as follows: $\begin{matrix} {{E\left\lbrack \left( {ɛ - \hat{ɛ}} \right)^{2} \right\rbrack} \approx {{\sigma^{2}\left( {M,N} \right)} + \left\lbrack {\frac{P}{2\quad \pi \quad N}{\arg\left( {1 + {{\delta }^{2}\quad {\exp \left( {j\quad N\quad \gamma} \right)}}} \right)}} \right\rbrack^{2}}} & (10) \end{matrix}$

[0107] The accuracy of the result is validated by comparing equation (10) with the MSE of frequency offset estimates obtained from simulations for different values of ε and |δ|² using M=4 at SNR=20 dB. With reference to FIG. 10, the MSE is normalized to ε and is consistent with the analytical expression. It can also be observed that the frequency offset estimate is sensitive to the presence of DC offset.

Derivation of Equation (20)

[0108] Song's frequency offset estimator assumed the communication channel to be noisy and averages over a number of terms to improve the estimation. However, here an expression for the frequency offset estimation is first derived assuming that the channel is noiseless and no averaging is carried out.

[0109] With reference to FIG. 11, which illustrates a frequency offset estimator based on r_(yy)(m,m+1;n), where r_(yy)(m,m+1;n) is defined as the multiplication of discrete point y(m,n) with its conjugate N samples or the equivalent of one slot apart in time. Hence, $\begin{matrix} \begin{matrix} {{r_{yy}\left( {m,{{m + 1};n}} \right)} = {{y\left( {m,n} \right)}{y^{*}\left( {{m + 1},n} \right)}}} \\ {= {{{{{Ax}\left( {m,n} \right)}}^{2}{\exp \left( {{- j}\quad N\quad \gamma} \right)}} + {\delta }^{2} +}} \\ {{{{A\quad \delta \quad {x\left( {m,n} \right)}}}\left\{ {{\exp \left( {j\quad {\xi \left( {m,n} \right)}} \right)} +} \right.}} \\ \left. {\exp \left( {{- j}\quad {\xi \left( {{m + 1},n} \right)}} \right)} \right\} \\ {= {{{{{Ax}\left( {m,n} \right)}}^{2}{\exp \left( {{- j}\quad N\quad \gamma} \right)}} + {\delta }^{2} +}} \\ {{{{A\quad \delta \quad {x\left( {m,n} \right)}}}{\exp \left( {j\quad \xi \left( {m,n} \right)} \right)}\left\{ {1 +} \right.}} \\ {\left. {\exp\left\lbrack {- {j\left( {{\xi \left( {{m + 1},n} \right)} + {\xi \left( {m,n} \right)}} \right)}} \right\rbrack} \right\},} \end{matrix} & (11) \end{matrix}$

 where ξ(m,n)Δγ·(Nm+n)+α(m,n)+θ−β.  (12)

[0110] Note that ξ(m+1,n)+ξ(m,n)=2ξ(m,n)+Nγ, and using the identity 1+exp(j2θ)≡2 cos(θ)exp(jθ), the last term of equation (11) can be written as follows:

|Aδx(m,n)|exp(jξ(m,n)){1+exp[−j(2ξ(m,n)+Nγ)]}

[0111] =|Aδx(m,n)|·2 cos(ξ(m,n)+Nγ/2)·exp(−jNγ/2)

[0112] (13)

[0113] Now substituting equation (13) in equation (11) and taking out the factor exp(−jNγ) the following equation is obtained.

r _(YY)(m,m+1;n)=exp(−jNγ)[|Ax(m,n)|²+|δ|² exp(jNγ)+φm,n)exp(jNγ/2)]tm (14)

where φ(m,n)Δ2|Aδx(m,n)|cos(ξ(m,n)+Nγ/2).  (15)

[0114] Estimating the frequency offset using one point, when δ=0,φ(m,n)=0, and the phase of r_(yy)(m,m+1;n) is −Nγ, assuming |Nγ|<π, the frequency offset γ under noiseless conditions can be obtained by dividing the phase by −N. This is Song's frequency offset estimator with the assumption that no averaging is performed.

[0115] When DC offset is present, δ≠0, the frequency offset estimate then becomes: $\begin{matrix} \begin{matrix} {\hat{\gamma} = {{- \frac{1}{N}}{\arg \left\lbrack {r_{yy}\left( {m,{{m + 1};n}} \right)} \right\rbrack}}} \\ {= {\gamma - {\frac{1}{N}{\arg\left\lbrack {{{{Ax}\left( {m,n} \right)}}^{2} +} \right.}}}} \\ \left. {{{\delta }^{2}\quad {\exp \left( {j\quad N\quad \gamma} \right)}} + {{\varphi \left( {m,n} \right)}{\exp \left( {j\quad N\quad {\gamma/2}} \right)}}} \right\rbrack \\ {= {\gamma - {\frac{1}{N}{\arg\left\lbrack {1 + {\frac{{\delta }^{2}}{{{{Ax}\left( {m,n} \right)}}^{2}}{\exp \left( {j\quad N\quad \gamma} \right)}} +} \right.}}}} \\ {\left. {\frac{\varphi \left( {m,n} \right)}{{{{Ax}\left( {m,n} \right)}}^{2}}{\exp \left( {j\quad N\quad {\gamma/2}} \right)}} \right\rbrack.} \end{matrix} & (16) \end{matrix}$

[0116] The last two terms in the argument are undesirable and cause errors in the frequency offset estimate {circumflex over (γ)}. While the first undesirable term can be used for estimation if |δ|² is known, the second undesirable term is difficult to determine in practice.

[0117] Based on the model with Song's frequency offset estimator, where here the communication channel is assumed to be noiseless, and now with averaging to isolate the undesirable term, an alternate expression for the frequency offset estimation is now derived.

[0118] With reference to FIG. 12, which illustrates another frequency offset estimator based on averaging of r_(yy)(m,m+1;n), the time average of r_(yy)(m,m+1;n)is defined as R_(yy)(m,m+1;n). To simplify analysis, and for the substitution x(m,n)=x(0,n) to be valid in the summation, consideration is only accorded to the case when N(M−1)terms are used for the averaging over equation (15), thus: $\begin{matrix} \begin{matrix} {{R_{yy}\left( {m,{{m + 1};n}} \right)} = {\frac{1}{N\left( {M - 1} \right)}{\sum\limits_{m = 0}^{M - 2}{\sum\limits_{n = 0}^{N - 1}{r_{yy}\left( {m,{{m + 1};n}} \right)}}}}} \\ {= {{\exp \left( {{- {jN}}\quad \gamma} \right)}\begin{bmatrix} {{\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{{Ax}\left( {O,n} \right)}}^{2}}} + {{\delta }^{2}{\exp \left( {{jN}\quad \gamma} \right)}} +} \\ {\frac{1}{N\left( {M - 1} \right)}{\sum\limits_{m = 0}^{M - 2}{\sum\limits_{n = 0}^{N - 1}{{\varphi \left( {m,n} \right)}{\exp \left( {{jN}\quad {\gamma/2}} \right)}}}}} \end{bmatrix}}} \\ {= {{\exp \left( {{- {jN}}\quad \gamma} \right)}\left\lbrack {1 + {{\delta }^{2}{\exp \left( {{jN}\quad \gamma} \right)}} + {\Psi \left( {M,N,\gamma} \right)}} \right\rbrack}} \end{matrix} & (17) \end{matrix}$

[0119] where the undesirable term that is difficult to estimate, using equations (12) and (15) is given as: $\begin{matrix} {{{\Psi \left( {M,N,\gamma} \right)}\underset{=}{\Delta}\frac{\exp \left( {{jN}\quad {\gamma/2}} \right)}{N\left( {M - 1} \right)}{\sum\limits_{m = 0}^{M - 2}{\sum\limits_{n = 0}^{N - 1}{\varphi \left( {m,n} \right)}}}} = {\frac{2{{A\quad \delta}}{\exp \left( {{jN}\quad {\gamma/2}} \right)}}{N\left( {M - 1} \right)}{\sum\limits_{m = 0}^{M - 2}{\sum\limits_{n}^{N - 1}{{{x\left( {0,n} \right)}}{{\cos \left( {{\gamma \cdot \left( {{Nm} + n} \right)} + {\alpha \left( {0,n} \right)} + \theta - \beta + {N\quad {\gamma/2}}} \right)}.}}}}}} & (18) \end{matrix}$

[0120] We normalized the power of the received preamble when DC offset and noise is absent as 1, i.e. $\begin{matrix} {{\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{{Ax}\left( {0,n} \right)}}^{2}}} = 1} & (19) \end{matrix}$

[0121] The implications are that |A| is assumed to be known, and more importantly, that the values |δ|² and Ψ(M,N,γ) are normalized to the received preamble power. In the absence of DC offset, the frequency offset estimate, which is valid for |Nγ|≦π assuming that

arg[1+|δ|²exp(jNγ+Ψ(M,N,γ)]<<Nγ is,

[0122] $\begin{matrix} \begin{matrix} {\hat{\gamma} = {{- \frac{1}{N}}{\arg \left\lbrack {R_{yy}\left( {m,{{m + 1};n}} \right)} \right\rbrack}}} \\ {= {\gamma - {\frac{1}{N}{{\arg \left\lbrack {1 + {{\delta }^{2}{\exp \left( {{jN}\quad \gamma} \right)}} + {\Psi \left( {M,N,\gamma} \right)}} \right\rbrack}.}}}} \end{matrix} & (20) \end{matrix}$

[0123] As in equation (16), the last two terms in the argument cause errors in the frequency offset estimate even in the absence of noise. However, assuming |δ| is known, and if Ψ(M,N,γ)<<1, a more simplified expression can be obtained for {circumflex over (γ)}, the frequency offset estimate.

Validity of Ψ(M,N,γ)<<1

[0124] Support for the assumption that Ψ(M,N,γ)<<1 now follows, with determining the conditions that need to be satisfied for the assumption to hold true when ψΔθ−β+Nγ/2ε[0,2π) varies for different data packets. A method is proposed to design the preamble of the data packets such that the assumption is valid for small values of γ but for different ψ, since in practice this is an unknown value. Three conditions, Condition A, Condition B, and Condition C, are deduced which lead to increasing support as to the validity of Ψ(M,N,γ)<<1 when γ is small. In particular it will be shown that the preamble that conforms to the standards of IEEE 802.11a satisfies the Condition A.

[0125] For simplification, equation (18) is re-written as follows:

Ψ(M,N,γ,ψ)=2|Aδ|Ψ′(M,N,γ,ψ)  (21)

[0126] where $\begin{matrix} \begin{matrix} {{\Psi^{\prime}\left( {M,N,\gamma,\varphi} \right)}\underset{=}{\Delta}\frac{\exp \left( {{jN}\quad {\gamma/2}} \right)}{\left( {M - 1} \right)N}{\sum\limits_{n = 0}^{N - 1}{{{x\left( {0,n} \right)}}{\sum\limits_{m = 0}^{M - 2}{\cos \left( {{\gamma \quad {Nm}} + {\gamma \quad n} + {\alpha \left( {0,n} \right)} + \psi} \right)}}}}} \\ {{\sum\limits_{k = 0}^{n - 1}{\cos \left( {{kx} + a} \right)}} \equiv {\cos \quad {ec}\frac{x}{2}{\sin \left( \frac{nx}{2} \right)}{\cos \left( {\frac{\left( {n - 1} \right)x}{2} + a} \right)}}} \end{matrix} & (22) \end{matrix}$

[0127] Using the identity for the summation over index m, equation (22) becomes, $\begin{matrix} {{\Psi^{\prime}\left( {M,N,\gamma,\psi} \right)} = {\frac{\exp \left( {j\quad N\quad {\gamma/2}} \right)}{M - 1}\cos \quad {{ec}\left( \frac{\gamma \quad N}{2} \right)}{\sin \left( \frac{\left( {M - 1} \right)\gamma \quad N}{2} \right)}{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)}}} & (23) \end{matrix}$

[0128] where $\begin{matrix} {{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)}\underset{=}{\Delta}\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{{x\left( {0,n} \right)}}{\cos \left( {{\gamma \quad n} + {\alpha \left( {0,n} \right)} + \psi^{\prime}} \right)}}}} & (24) \\ {{{\psi^{\prime}\underset{=}{\Delta}\quad \psi} + {\gamma \quad {{N\left( {M - 2} \right)}/2}}} \in \left\lbrack {0,{2\quad \pi}} \right)} & (25) \end{matrix}$

[0129] A more useful expression of equation (24) for observing the conditions when Ψ″(N,γ,ψ′) can be made small by some choice of is x(0,n)is given as follows: $\begin{matrix} \begin{matrix} \left. {{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)} = {\frac{1}{N}\left\lfloor {\sum\limits_{n = 0}^{N - 1}{{{x\left( {0,n} \right)}}{\exp \left( {j\quad \gamma \quad n} \right)}\exp \quad j\quad {\alpha \left( {0,n} \right)}}} \right){\exp \left( {j\quad \psi^{\prime}} \right)}}} \right\rfloor \\ {= {\frac{1}{N}{\left\lbrack {{\exp \left( {j\quad \psi^{\prime}} \right)}{\sum\limits_{n = 0}^{N - 1}{{x\left( {0,n} \right)}{\exp \left( {j\quad \gamma \quad n} \right)}}}} \right\rbrack}}} \end{matrix} & (26) \end{matrix}$

[0130] Summarizing, the following equation results.

Ψ(M,N,γ,ψ)=

[0131] $\begin{matrix} {{\Psi \left( {M,N,\gamma,\psi} \right)} = {2{{A\quad \delta}}\overset{\overset{\Psi^{\prime}{({M,N,\gamma,\psi})}}{}}{\frac{\exp \left( {j\quad N\quad {\gamma/2}} \right)}{M - 1}\cos \quad {{ec}\left( \frac{\gamma \quad N}{2} \right)}{\sin \left( \frac{M\quad \gamma \quad N}{2} \right)}\underset{\underset{\Psi^{''}{({N,\gamma,\psi^{\prime}})}}{}}{\frac{1}{N}{\left\lbrack {{\exp \left( {j\quad \psi^{\prime}} \right)}{\sum\limits_{n = 0}^{N - 1}{{x\left( {0,n} \right)}{\exp \left( {j\quad \gamma \quad n} \right)}}}} \right\rbrack}}}}} & (27) \end{matrix}$

[0132] A. Bound and Statistical Analysis of Ψ″(N,γ,ψ′)

[0133] For each preamble received, all the parameters and signal at a given (m,n) can be considered to be fixed. However, when the next data packet is received, we have a new set of parameters and signal. The bound of Ψ″(N,γ,ψ′) will now be calculated for any given ψ′ε[0,2π) and γε[−π/N,π/N). Then assuming ψ′ to be a random variable, the mean and variance of Ψ″(N,γ,ψ′) is analyzed.

[0134] Using equation (26) and that in general for any value of θ,

|R[exp(jθ)(a+jb)]|=|cos(θ)a−sin(θ)b|=a+jb|·|cos(θ+a tan(b/a))|  (28)

[0135] the bound of Ψ″(N,γ,ψ′) can be expressed as follows: $\begin{matrix} {{{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)}} \leq {\frac{1}{N}{{\sum\limits_{n = 0}^{N - 1}{{x\left( {0,n} \right)}{\exp \left( {j\quad \gamma \quad n} \right)}}}}\underset{=}{\Delta}\quad {\max\limits_{\psi^{\prime}}{{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)}}}}} & (29) \end{matrix}$

[0136] Assuming that ψ′ is a random variable with uniform distribution, with the probability density function (pdf) given as ${\frac{1}{2\pi}\quad {{for}\quad\left\lbrack {0,{2\pi}} \right)}},$

[0137] the mean of Ψ″(N,γ,ψ′) is, $\begin{matrix} \begin{matrix} {{E_{\psi^{\prime}}\left\lbrack {\Psi^{''}\left( \psi^{\prime} \right)} \right\rbrack} = {\frac{1}{N}{\int_{0}^{2\pi}{{{\Psi^{''}\left( \psi^{\prime} \right)} \cdot \frac{1}{2\pi}}{\psi^{\prime}}}}}} \\ {= {\frac{1}{N}\frac{1}{2\pi}{\left\lbrack {\sum\limits_{n = 0}^{N - 1}{{x\left( {0,n} \right)}{\exp \left( {{j\gamma}\quad n} \right)}{\int_{0}^{2\pi}{{\exp \left( {j\psi}^{\prime} \right)}{\psi^{\prime}}}}}} \right\rbrack}}} \\ {0} \end{matrix} & (30) \end{matrix}$

[0138] The variance can be obtained using equation (28) as follows: $\begin{matrix} \begin{matrix} {{{var}\left\lbrack {\Psi^{''}\left( \psi^{\prime} \right)} \right\rbrack} = {\int_{0}^{2\pi}{{{\Psi^{''}\left( \psi^{\prime} \right)}}^{2}\frac{1}{2\pi}{\psi^{\prime}}}}} \\ {= {\frac{1}{2N^{2}}{{\sum\limits_{n = 0}^{N - 1}{{x\left( {0,n} \right)}{\exp \left( {{j\gamma}\quad n} \right)}}}}^{2}}} \\ {= {\frac{1}{2}\left\lbrack {\max\limits_{\psi^{\prime}}{{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)}}} \right\rbrack}^{2}} \end{matrix} & (31) \end{matrix}$

[0139] Thus, the above relates the bound of |Ψ″| and the variance of Ψ″ with respect to ψ′. Therefore, if max_(ψ′)|Ψ″(N,γ,ψ′)| can be made close to 0, the assumption that Ψ(M,N,γ,ψ)<<1 is valid. This is true when M→∞ for any given δ and ψ′, but not necessarily true when N→∞. Typically, not many slots will be available for averaging, so a preamble is designed such that it has a small bound. This can be done by scrutinizing the function max_(ψ′)|Ψ″(N,γ,ψ′)|.

[0140] B. Condition A

[0141] When γn<<1 for n=0, . . . ,N−1, then it can be written thatexp(jγn)≈1,n=0, . . . ,N−1. Then from equation (29), $\begin{matrix} {{\max {{\Psi^{''}\left( {N,\gamma} \right)}}} \approx {\frac{1}{N}{{{\sum\limits_{n = 0}^{N - 1}{x\left( {0,n} \right)}}}.}}} & (32) \end{matrix}$

[0142] For Ψ(M,N,γ,ψ)<<1, the Condition A is defined as follows: $\begin{matrix} {{\sum\limits_{n = 0}^{N - 1}{x\left( {0,n} \right)}} = 0.} & (33) \end{matrix}$

[0143] C. Condition B

[0144] Now assuming that N is even, an alternative expression for equation (29) is: $\begin{matrix} \begin{matrix} {{\max\limits_{\psi^{\prime}}{{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)}}} = {\frac{1}{N}{{{\sum\limits_{n = 0}^{{N/2} - 1}{{x\left( {0,{2n}} \right)}{\exp \left( {{j\gamma}\quad 2n} \right)}}} + {x\left( {0,{{2n} + 1}} \right)}}}}} \\ {{\exp \left( {{j\gamma}\left( {{2n} + 1} \right)} \right)}} \\ {= {\frac{1}{N}{{\sum\limits_{n = 0}^{{N/2} - 1}{{\exp \left( {{j\gamma}\quad 2n} \right)}\left\lbrack {{x\left( {0,{2n}} \right)} + {x\left( {0,{{2n} + 1}} \right)}} \right.}}}}} \\ {\left. {\exp \left( {j\quad \gamma} \right)} \right\rbrack } \end{matrix} & (34) \end{matrix}$

[0145] Assuming that γ<<1, where this is a less strict assumption than that used in equation (32), x(0,2n) +x(0,2n+1)exp(jγ)≈x(0,2n)+x(0,2n+1), which is set to 0.

[0146] Thus, the Condition B, which also satisfies the Condition A, is defined as follows:

x(0,2n)=−x(0,2n+1),n=0, . . . ,N/2−1  (35)

[0147] If the Condition B is satisfied, $\begin{matrix} {{\max\limits_{\psi^{\prime}}{{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)}}} = {\frac{1}{N}{\left( {1 - {\exp \left( {j\quad \gamma} \right)}} \right)}{{\sum\limits_{n = 0}^{{N/2} - 1}{{\exp \left( {{j\gamma}\quad 2n} \right)}{x\left( {0,{2n}} \right)}}}}}} & (36) \end{matrix}$

[0148] D. Condition C

[0149] From equation (34) the procedure can be repeated N′=log₂N, where N′ is a positive integer, times on equation (36) to obtain the following expression, $\begin{matrix} {{\max\limits_{\psi^{\prime}}{{\Psi^{''}\left( {N,\gamma,\psi^{\prime}} \right)}}} = {\frac{1}{N}{{x\left( {0,0} \right)}}{{\prod\limits_{n = 0}^{N - 1}\left( {1 - {\exp \left( {j\quad \gamma \quad 2^{n}} \right)}} \right)}}}} & (37) \end{matrix}$

[0150] The bounds of equation (37) are obtained by subjecting the preamble to a set of conditions, which collectively is known as the Condition C, and defined as: $\quad\begin{matrix} \left\{ \begin{matrix} {{{x\left( {0,{2n}} \right)} = {- {x\left( {0,{{2n} + 1}} \right)}}},} & {{n = 0},{{\cdots \quad {N/2}} - 1}} \\ {{{x\left( {0,{4n}} \right)} = {- {x\left( {0,{2\left( {{2n} + 1} \right)}} \right)}}},} & {{n = 0},{{\cdots \quad {N/4}} - 1}} \\ {{{x\left( {0,{8n}} \right)} = {- {x\left( {0,{4\left( {{2n} + 1} \right)}} \right)}}},} & {{n = 0},{{\cdots \quad {N/8}} - 1}} \\ \text{⋮=⋮} & \quad \\ {{{x\left( {0,{\left( {N/2} \right)n}} \right)} = {- {x\left( {0,{\left( {N/4} \right)\left( {{2n} + 1} \right)}} \right)}}},} & {{n = 0},{{\cdots \quad {N/\left( {N/2} \right)}} - 1}} \\ {{x\left( {0,0} \right)} = {- {x\left( {0,{N/2}} \right)}}} & \quad \end{matrix} \right. & (38) \end{matrix}$

[0151] To obtain the preamble which follows the Condition C, the following method is proposed: for N=2, the preamble, which is represented as a row vector, is x₂=x(0,0)[1,−1], for N=4 the preamble is x₄=[x₂,−x₂]; and in general, the preamble is x_(N)=[x_(N/2),−x_(N/2)]. Thus, the preamble is properly defined by specifying one of the preamble elements, say x(0,0). For reference, for N=16, the preamble is x(0,0)·[1,−1,−1,1,−1,1,1,−1,−1,1,1,−1,1,−1,−1,1]. For simulation x(0,0) is set to equal 1. It should be noted that, ${\prod\limits_{n = 0}^{N^{\prime} - 1}\left( {1 - {\exp \left( {{j\gamma}\quad 2^{n}} \right)}} \right)} = {\prod\limits_{n = 0}^{N^{\prime} - 1}\left( {{j\quad \gamma \quad 2^{n}} - {\left( {\gamma \quad 2^{n}} \right)^{2}/2} + \cdots} \right)}$

[0152] with the lowest order term given as, ${\left( {j\quad \gamma} \right)^{N^{\prime}} \cdot 2^{\sum\limits_{n = 0}^{N^{\prime - 1}}n}} = {\left( {j\quad {\gamma \cdot 2^{{({N^{\prime} - 1})}/2}}} \right)^{N^{\prime}} = \left( {j\quad \gamma {\sqrt{\left. {N/2} \right)}}^{N^{\prime}}} \right.}$

[0153] Thus, assuming that γ<{square root}{square root over (2/N)}, the lowest order term decreases at a rate of N′ and makes Ψ″(N,γ,ψ′) very close to 0, regardless of the value of ψ. The assumption γ<{square root}{square root over (2/N)} appears to be less stringent than that required for the Condition B, which assumes that γ<<1.

[0154] Hence, in view of the analysis above, the assumption that Ψ(M,N,γ)<<1, and can therefore be ignored in equation (20) is valid.

First Embodiment of a Frequency Offset Estimator

[0155] Based on the assumption that Ψ(M,N,γ) can be ignored, equation (20) can be simplified so that the frequency offset estimate {circumflex over (γ)} is given by, $\begin{matrix} {\hat{\gamma} = {\gamma - {\frac{1}{N}{\arg\left\lbrack {1 + {{\delta }^{2}\quad {\exp \left( {j\quad N\quad \gamma} \right)}}} \right\rbrack}}}} & (39) \end{matrix}$

[0156] An approximated form of equation (39) is derived as follows: $\begin{matrix} \begin{matrix} {\hat{\gamma} = {\gamma - {\frac{1}{N}{\arg\left\lbrack {1 + {{\delta }^{2}\quad {\cos \left( {N\quad \gamma} \right)}} + {j\quad {\delta }^{2}\quad {\sin \left( {N\quad \gamma} \right)}}} \right\rbrack}}}} \\ {\approx {\gamma - {\frac{1}{N}{\arg\left\lbrack {1 + {\delta }^{2} + {j\quad {\delta }^{2}N\quad \gamma}} \right\rbrack}}}} \\ {= {\gamma - {\frac{1}{N}{\tan^{- 1}\left( \frac{{\delta }^{2}N\quad \gamma}{1 + {\delta }^{2}} \right)}}}} \\ {{\approx {\gamma - {\frac{1}{N}\left( \frac{{\delta }^{2}N\quad \gamma}{1 + {\delta }^{2}} \right)}}} = {{\gamma\left( {1 + {\delta }^{2}} \right)}^{- 1}.}} \end{matrix} & (40) \end{matrix}$

[0157] In the first approximation it is assumed that Nγ is small, so that cos(Nγ)≈1 and sin(Nγ)≈Nγ, and in the second approximation it is assumed that ${\frac{{\delta }^{2}N\quad \gamma}{1 + {\delta }^{2}}{1\quad {i.e.\quad N}\quad \gamma}{1 + {1/{\delta }^{2}}}},$

[0158] such that ${\tan^{- 1}\left\lfloor \frac{{\delta }^{2}N\quad \gamma}{1 + {\delta }^{2}} \right\rfloor} \approx {\frac{{\delta }^{2}N\quad \gamma}{1 + {\delta }^{2}}.}$

[0159] Note that the approximation is exact when |δ|²=1, which results in the estimation being more accurate in the region when |δ|²=1, and the simulation results bear this out.

[0160] In practice the frequency offset estimate {circumflex over (γ)} is estimated from the phase R_(zz). Thus, the frequency offset estimate for this embodiment, which will be referred to as FOEI, is defined as follows: $\begin{matrix} {{\overset{\sim}{\gamma}I\quad \underset{\underset{\_}{\_}}{\Delta}} - {\frac{1}{N}\quad \arg \quad \left( R_{zz} \right)\left( {1 + {\delta }^{2}} \right)}} & (41) \end{matrix}$

[0161] With reference to FIGS. 13 and 14 a frequency offset estimator 1300 and its operation 1400 starts 1402 with determining 1405 whether receipt of a data packet 1310 at an input 1305 has started. The data packet 1310 has a preamble 1315, which is represented by samples z(m,n). The input 1305 is coupled to a frequency offset estimator module 1320 and to a DC offset estimator 1325, both of which receive the preamble 1315. The DC offset estimator 1325 processes the preamble to determine 1410 and produce an estimate of DC offset power, that is represented by |δ|². Subsequently, an adder 1330 adds 1415 a predetermined constant to the DC offset power |δ|². In the frequency offset estimator module 1320, a memory module 1335 stores 1420 a predetermined number of the samples, represented by N, and the N samples are then processed by a complex conjugation module 1340, that performs 1425 complex conjugation on the N samples. The result from the complex conjugation module 1340 and the preamble z(m,n) 1315, are then multiplied 1430 together by a multiplier 1345 to produce an output, represented by r_(zz)(m,m+1;n). An averaging module 1350 averages 1435 r_(zz)(m,m+1;n) over a predetermined number of samples, K, and the averaging module 1350 provides an output represented by R_(zz)(m,m+1;n). An argument divider 1355 then determines the argument of R_(zz)(m,m+1;n), and divides 1440 it by −N to produce a resulting quotient. The output of the argument divider 1350 i.e. the resulting quotient, and the output of the adder 1330 are then multiplied 1445 together by multiplier 1360, and the multiplier 1360 then provides 1450 a frequency offset estimate {circumflex over (γ)} to an output 1365. The operation 1400 then returns to determining receipt of another data packet, and repeats as described.

Second Embodiment of a Frequency Offset Estimator

[0162] Again assuming that Ψ(M,N,γ) can be ignored, equation (17) can be rewritten, as follows:

R _(yy)(m,m+1;n)≈exp(−jNγ)+|δ|²  (42)

[0163] This is estimated from R_(zz)(m,m+1;n), thus where implementation allows |δ|² to be removed from R_(zz) first before calculating the phase, then the frequency offset for this embodiment, which will be referred to as FOEII, is defined as follows: $\begin{matrix} {{\overset{\sim}{\gamma}{II}\quad \underset{\underset{\_}{\_}}{\Delta}} - {\frac{1}{N}\quad {\arg\left( {R_{zz} - {\delta }^{2}} \right)}}} & (43) \end{matrix}$

[0164] With reference to FIGS. 15 and 16 a frequency offset estimator 1500 and its operation 1600 starts 1602 with determining 1605 whether receipt of a data packet 1510 at an input 1505 has started. The data packet 1510 has a preamble 1515, which is represented by samples z(m,n). The input 1505 is coupled to a frequency offset estimator module 1520 and to a DC offset estimator 1525, both of which receive the preamble 1515. The DC offset estimator 1525 processes the preamble to determine 1610 and produce an estimate of DC offset power, that is represented by |δ|². In the frequency offset estimator module 1520, a memory module 1535 stores 1620 a predetermined number of the samples, represented by N, and the N samples are then processed by a complex conjugation module 1540, that performs 1625 complex conjugation on the N samples.

[0165] The result from the complex conjugation module 1540 and the preamble z(m,n) 1515, are then multiplied 1630 together by a multiplier 1545 to produce an output, represented by r_(zz)(m,m+1;n). An averaging module 1550 averages 1635 r_(zz)(m,m+1;n) over a predetermined number of samples, K, and the averaging module 1550 provides an output represented by R_(zz)(m,m+1;n).

[0166] A subtractor 1555 combines the output R_(zz)(m,m+1;n) from the averaging module 1550 and the output |δ|² from the DC offset estimator 1525, and an argument divider module 1560 then determines the argument of the result from the subtractor 1555, and divides 1645 the argument by −N to produce the frequency offset estimate {circumflex over (γ)}. The argument divider module 1565 then provides 1650 the frequency offset estimate {circumflex over (γ)} to an output 1565.

[0167] The present invention, as described in the embodiments herein, advantageously provide a frequency offset estimator that takes into account an estimate of DC offset, and produces an improved frequency offset estimate.

[0168] Using computer simulations with the number of discrete points in one preamble slot N=16, for different SNR and ε, MSE is calculated and plotted for 1000 simulations against increasing DC offset power |δ|², to produce a series of graphs.

[0169] With reference to FIGS. 17A-F the graphs show resultant MSE for both FOEI and FOEII across increasing DC offset power |δ|², for the three preamble conditions i.e. Condition A, Condition B and Condition C, when two preamble slots are used i.e. M=2. The relative frequency offset is ε=0.1 for FIGS. 17A and 17B; is ε=0.5 for FIGS. 17C and 17D; and is ε=1 for FIGS. 17E and 17F. The SNR for the graphs in FIGS. 17A, 17C and 17E is 20dB and can be compared with stronger signal conditions in FIGS. 17B,17D and 17F, where the SNR is 40 dB.

[0170] Similarly, with reference to FIGS. 18A-F the graphs show resultant MSE for both FOEI and FOEII across increasing DC offset power |δ|², for the three preamble conditions i.e. Condition A, Condition B and Condition C, when four preamble slots are used i.e. M=4. The relative frequency offset is ε=0.1 for FIGS. 18A and 18B; is ε=0.5 for FIGS. 18C and 18D; and is ε=1 for FIGS. 18E and 18F. The SNR for the graphs in FIGS. 18A, 18C and 18E is 20 dB and can be compared with stronger signal conditions in FIGS. 18B, 18D and 18F, where the SNR is 40 dB.

[0171] The FIGS. 17A-F and 18A-F, show that preambles that satisfy the Condition A, Condition B and Condition C advantageously result in decreasing MSE for both FOEI and FOEII. The decrease is more significant for FOEII than FOEI, particularly at higher SNR values.

[0172] With reference to FIGS. 19A-19C, the graphs show plots for a prior art FOE, referred to in the graphs as original FOE, and FOEII in accordance with the present invention, as described. Again using computer simulations with the number of discrete points in one preamble slot N=16 at SNR=20 dB for different ε, MSE is calculated and plotted for 1000 simulations against increasing DC offset power |δ|², to produce a series of graphs for M=2, 4 and 6.

[0173] The FOE of the present invention as described, advantageously provides substantially improved performance relative to the prior art FOE, particularly in the increasing presence of DC offset.

[0174] This is accomplished by a frequency offset estimator that takes into account DC offset in determining a frequency offset estimate. The frequency offset estimator can then be used with a DC offset estimator, that provides the DC offset estimate, and with a compensator, to provide a frequency offset estimation and compensation system.

[0175] The frequency offset compensator advantageously receives the estimate of the DC offset from the DC estimator and uses the estimate of the DC offset to produce the estimate of the frequency offset, thus providing an improved estimate of the frequency offset.

[0176] As the DC offset estimator and the frequency offset estimator operate concurrently to produce estimates of DC and frequency offsets from the preamble of received data packets, the concurrent operation advantageously allows more time for both the DC offset estimator and the frequency offset estimator to produce the estimates of DC and frequency offsets.

[0177] Thus, the present invention, as described provides a method and apparatus for frequency offset estimation, and system utilizing same, which overcomes or at least reduces the abovementioned problems of the prior art.

[0178] It will be appreciated that although only particular embodiments of the invention have been described in detail, various modifications and improvements can be made by a person skilled in the art without departing from the scope of the present invention. 

We claim:
 1. A data communication receiver for receiving at least one data packet, wherein the at least one data packet has a variety of inherent offsets, the data communication receiver comprising: an input coupled to receive the at least one data packet; and a plurality of offset estimators coupled to the input, the plurality of offset estimators comprising: at least one of the plurality of offset estimators for estimating at least one of the variety of inherent offsets from at least a received portion of the at least one data packet while the at least one data packet is being received, and the at least one of the plurality of offset estimators having an output for providing an estimate of the at least one of the variety of inherent offsets; and at least another one of the plurality of offset estimators coupled to the output of the at least one of the plurality of offset estimators, the at least another one of the plurality of offset estimators for estimating at least another one of the variety of inherent offsets from the at least the received portion of the at least one data packet while the at least one data packet is being received and from the estimate of the at least one of the variety of inherent offsets, and the at least another one of the plurality of offset estimators having an output for providing an estimate of the at least another one of the variety of inherent offsets.
 2. A data communication receiver in accordance with claim 1 further comprising a compensator, wherein the compensator is coupled to the input for receiving the at least one data packet, coupled to the output of the at least one of the plurality of offset estimators for receiving the estimate of the at least one of the variety of inherent offsets, and coupled to the output of the at least another one of the plurality of offset estimators for receiving the estimate of the at least another one of the variety of inherent offsets, the compensator for compensating the at least one of the variety of inherent offsets of the data packet using the estimate of the at least one of the variety of inherent offsets, the compensator for compensating the at least another one of the variety of inherent offsets of the data packet using the estimate of the at least another one of the variety of inherent offsets, and the compensator for producing a compensated data packet; and an output coupled to the compensator for providing the compensated data packet corresponding to the at least one data packet.
 3. A data communication receiver in accordance with claim 1 wherein the at least one of the plurality of offset estimators comprises a direct current offset estimator, the direct current offset estimator for estimating a direct current offset from the at least the received portion of the at least one data packet while the at least one data packet is being received, and the direct current offset estimator for providing an estimate of the direct current offset of the at least one data packet.
 4. A data communication receiver in accordance with claim 3 wherein the at least another one of the plurality of offset estimators comprises a frequency offset estimator coupled to receive the estimate of the direct current offset of the at least one data packet from the direct current offset estimator, the frequency offset estimator for estimating a frequency offset from the at least the received portion of the at least one data packet while the at least one data packet is being received and from the estimate of the direct current offset of the at least one data packet, and the frequency offset estimator for providing an estimate of the frequency offset of the at least one data packet.
 5. A data communication receiver in accordance with claim 3 wherein the frequency offset estimator comprises: an input for receiving samples of the at least one data packet; a memory module coupled to the input, the memory module for storing a predetermined number of the samples of at least an initial portion of the at least one data packet, and the memory module for providing at least the stored samples; a complex conjugation module coupled to receive the stored samples, the complex conjugation module for determining complex conjugation of the stored samples, and for providing complex conjugated samples; a multiplier coupled to the input and coupled to the complex conjugation module, the multiplier for multiplying the samples of the at least one data packet and the complex conjugated samples to produce multiplied samples; an averaging module coupled to receive the multiplied samples, the averaging module for averaging the multiplied samples by another predetermined number, and for providing averaged samples; an argument divider module coupled to receive the averaged samples, the argument divider for determining the argument of the averaged samples, for dividing the argument by the predetermined number, and for providing the quotient; an adder coupled to receive the estimate of the direct current offset of the at least one data packet, the adder for adding a predetermined constant to the estimate of the direct current offset, and the adder for producing added direct current offset; another multiplier coupled to the adder and the argument divider module, the another multiplier for multiplying the added direct current offset and the quotient to produce the estimate of the frequency offset of the at least one data packet; and an output coupled to the another multiplier for providing the estimate of the frequency offset of the at least one data packet.
 6. A data communication receiver in accordance with claim 3 wherein the frequency offset estimator comprises: an input for receiving samples of the at least one data packet; a memory module coupled to the input, the memory module for storing a predetermined number of the samples of at least an initial portion of the at least one data packet, and the memory module for providing at least the stored samples; a complex conjugation module coupled to receive the stored samples, the complex conjugation module for determining complex conjugation of the stored samples, and for providing complex conjugated samples; a multiplier coupled to the input and coupled to the complex conjugation module, the multiplier for multiplying the samples of the at least one data packet and the complex conjugated samples to produce multiplied samples; an averaging module coupled to receive the multiplied samples, the averaging module for averaging the multiplied samples by another predetermined number, and for providing averaged samples; a subtractor coupled to the averaging module and the direct current offset estimator for combining the averaged samples and the estimate of the direct current offset of the at least one data packet, and the subtractor for producing a subtracted result; an argument divider module coupled to receive the subtracted result, the argument divider module for determining the argument of the subtracted result, and for dividing the argument by the predetermined number to produce the estimate of the frequency offset of the at least one data packet; and an output coupled to the argument divider module for providing the estimate of the frequency offset of the at least one data packet.
 7. A data communication receiver for receiving data packets, the data communication receiver comprising: an input coupled to receive at least one data packet, wherein the at least one data packet has a variety of inherent offsets; at least one offset estimator for estimating at least one of the variety of inherent offsets from at least a received portion of the at least one data packet while the at least one data packet is being received, and the at least one offset estimator having an output for providing an estimate of the at least one of the variety of inherent offsets; at least one compensator coupled to the input for receiving the at least one data packet, and coupled to the output of the at least one offset estimator for receiving the estimate of the at least one of the variety of inherent offsets, the at least one compensator for compensating the at least one of the variety of inherent offsets of the data packet using the estimate of the at least one of the variety of inherent offsets to produce at least a portion of a partially compensated data packet, and wherein the at least one compensator has an output for providing the at least the portion of the partially compensated data packet corresponding to the at least one data packet; a plurality of offset estimators coupled to the output of the at least one compensator, the plurality of offset estimators comprising: at least one of the plurality of offset estimators for estimating the at least one of the variety of inherent offsets from the at least the portion of the partially compensated data packet while the at least the portion of the partially compensated data packet is being received, and the at least one of the plurality of offset estimators having an output for providing an estimate of the at least one of the variety of inherent offsets; and at least another one of the plurality of offset estimators coupled to the output of the at least one of the plurality of offset estimators, the at least another one of the plurality of offset estimators for estimating at least another one of the variety of inherent offsets from the at least the portion of the partially compensated data packet while the at least the portion of the partially compensated data packet is being received, and from the estimate of the at least one of the variety of inherent offsets, and the at least another one of the plurality of offset estimators having an output for providing an estimate of the at least another one of the variety of inherent offsets.
 8. A data communication receiver in accordance with claim 7 further comprises another compensator, wherein the another compensator is coupled to the output of the at least one compensator, the another compensator for receiving the at least the portion of the partially compensated data packet, the another compensator coupled to the output of the at least one of the plurality of offset estimators for receiving the estimate of the at least one of the variety of inherent offsets, and coupled to the output of the at least another one of the plurality of offset estimators for receiving the estimate of the at least another one of the variety of inherent offsets, the another compensator for compensating the at least one of the variety of inherent offsets of the data packet using the estimate of the at least one of the variety of inherent offsets, and for compensating the at least another one of the variety of inherent offsets of the data packet using the estimate of the at least another one of the variety of inherent offsets, to produce a further compensated data packet; and an output coupled to the another compensator for providing the further compensated data packet corresponding to the at least one data packet.
 9. A data communication receiver in accordance with claim 7 wherein the at least one offset estimator comprises at least one direct current offset estimator, the at least one direct current offset estimator for estimating a direct current offset from the at least the received portion of the at least one data packet while the at least one data packet is being received, and the at least one direct current offset estimator for providing an estimate of the direct current offset of the at least one data packet.
 10. A data communication receiver in accordance with claim 9 wherein the at least one compensator comprises at least one direct current offset compensator, the at least one direct current offset compensator for receiving the estimate of the direct current offset of the at least one data packet, the at least one direct current offset compensator for compensating the direct current offset of the at least one data packet using the estimate of the direct current offset of the at least one data packet, and the at least one direct current compensator for producing at least a portion of a partially direct current compensated data packet.
 11. A data communication receiver in accordance with claim 10 wherein the at least one of the plurality of offset estimators comprises at least another direct current estimator, the at least another direct current estimator for estimating direct current offset from the at least the portion of the partially direct current compensated data packet while the at least the portion of the partially direct current compensated data packet is being received, and for providing an estimate of direct current offset of the partially direct current compensated data packet.
 12. A data communication receiver in accordance with claim 11 wherein the at least another one of the plurality of offset estimators comprises at least one frequency offset estimator, the at least one frequency offset estimator coupled to the output of the at least another direct current estimator, the at least one frequency offset estimator for estimating frequency offset from the at least the portion of the partially direct current compensated data packet while the at least the portion of the partially direct current compensated data packet is being received, and the at least one frequency offset estimator for providing an estimate of the frequency offset of the partially direct current compensated data packet.
 13. A data communication receiver in accordance with claim 12 wherein the another compensator comprises at least one direct current and frequency offset compensator, the at least one direct current and frequency offset compensator for receiving the estimate of the direct current offset of the partially direct current compensated data packet and the estimate of the frequency offset of the partially direct current compensated data packet, for compensating the at least the portion of the partially direct current compensated data packet using the estimate of the direct current offset of the partially direct current compensated data packet and the estimate of the frequency offset of the partially direct current compensated data packet, and for producing the further compensated data packet corresponding to the at least one data packet.
 14. A frequency offset estimator comprising: an input for receiving at least one data packet, wherein the data packet has at least a direct current offset and a frequency offset; an input for receiving an estimate of the direct current offset; and an output for providing an estimate of the frequency offset.
 15. A frequency offset estimator in accordance with claim 14 comprising: the input for receiving samples of the at least one data packet; a memory module coupled to the input, the memory module for storing a predetermined number of the samples of at least an initial portion of the at least one data packet, and the memory module for providing at least the stored samples; a complex conjugation module coupled to receive the stored samples, the complex conjugation module for determining complex conjugation of the stored samples, and for providing complex conjugated samples; a multiplier coupled to the input and coupled to the complex conjugation module, the multiplier for multiplying the samples of the at least one data packet and the complex conjugated samples to produce multiplied samples; an averaging module coupled to receive the multiplied samples, the averaging module for averaging the multiplied samples by another predetermined number, and for providing averaged samples; an argument divider module coupled to receive the averaged samples, the argument divider for determining the argument of the averaged samples, for dividing the argument by the negative value of the predetermined number, and for providing the quotient; an adder coupled to receive the estimate of the direct current offset of the at least one data packet, the adder for adding a predetermined constant to the estimate of the direct current offset, and the adder for producing added direct current offset; another multiplier coupled to the adder and the argument divider module, the another multiplier for multiplying the added direct current offset and the quotient to produce the estimate of the frequency offset of the at least one data packet; and the output coupled to the another multiplier for providing the estimate of the frequency offset of the at least one data packet.
 16. A frequency offset estimator in accordance with claim 14 comprising: the input for receiving samples of the at least one data packet; a memory module coupled to the input, the memory module for storing a predetermined number of the samples of at least an initial portion of the at least one data packet, and the memory module for providing at least the stored samples; a complex conjugation module coupled to receive the stored samples, the complex conjugation module for determining complex conjugation of the stored samples, and for providing complex conjugated samples; a multiplier coupled to the input and coupled to the complex conjugation module, the multiplier for multiplying the samples of the at least one data packet and the complex conjugated samples to produce multiplied samples; an averaging module coupled to receive the multiplied samples, the averaging module for averaging the multiplied samples by another predetermined number, and for providing averaged samples; a subtractor coupled to the averaging module and the direct current offset estimator for combining the averaged samples and the estimate of the direct current offset of the at least one data packet, and the subtractor for producing a subtracted result; an argument divider module coupled to receive the subtracted result, the argument divider module for determining the argument of the subtracted result, and for dividing the argument by the negative value of the predetermined number to produce the estimate of the frequency offset of the at least one data packet; and the output coupled to the argument divider module for providing the estimate of the frequency offset of the at least one data packet.
 17. A method for offset compensation comprising the steps of: a) determining at least one data packet is being received; b) estimating direct current offset of the at least one data packet to produce an estimate of direct current offset; c) estimating frequency offset of the at least one data packet using the estimate of direct current offset; d) compensating the at least one data packet using the estimate of direct current offset and an estimate of frequency offset to produce a compensated data packet; e) providing the compensated data packet corresponding to the at least one data packet.
 18. A method in accordance with claim 17, further comprising performing steps (b) and (c) substantially concurrently while the at least one data packet is being received.
 19. A method in accordance with claim 17, further comprising performing step (d) while the at least one data packet is being received.
 21. A method in accordance with claim 17, further comprising performing step (d) after the at least one data packet has been received.
 22. A method in accordance with claim 17, prior to step (a) comprising the steps of: determining at least another data packet corresponding to the at least one data packet is being received; estimating direct current offset of the at least another data packet to produce another estimate of direct current offset; and compensating the at least another data packet using the another estimate of direct current offset to produce the at least one data packet.
 23. A method for frequency offset estimation comprising the steps of: a) determining samples of at least one data packet are being received; b) determining direct current offset power using the samples of the at least one data packet; c) adding a predetermined constant to the direct current offset power; d) storing a predetermined number of the samples of the at least one data packet; e) performing complex conjugation on the predetermined number of the samples to produce a result; f) multiply the result of the complex conjugation with the samples of the at least one data packet to produce an output; g) determine the average of the output from step (n by another predetermined number to provide an average; h) determine argument of the average and divide the argument by the negative value of the predetermined number to produce a resulting quotient; and i) multiply the resulting quotient by the sum of the constant and the direct current offset power determined in step (c) to produce a frequency offset estimate.
 24. A method for frequency offset estimation comprising the steps of: a) determining samples of at least one data packet are being received; b) determining direct current offset power using the samples of the at least one data packet; c) storing a predetermined number of the samples of the at least one data packet; d) performing complex conjugation on the predetermined number of the samples to produce a result; e) multiply the result of the complex conjugation with the samples of the at least one data packet to produce an output; f) determine the average of the output from step (e) by another predetermined number to provide an average; g) combine the direct current offset power from step (b) with the average from step (f) by subtraction; h) determine argument of the result of subtraction from step (g) and divide the argument by the negative value of the predetermined number to produce a frequency offset estimate. 